package com.android.openapp.data;

//import services.*;


import java.util.LinkedHashMap;


import android.R.color;
import android.content.Context;
import android.util.Log;

import com.socrata.data.View;


import com.socrata.data.View.Row;



public class Museo extends Place{
	
	
	/**
	 * 
	 * id="9897670" name="MUSEO_DENOMINAZIONE"
	id="9897671" name="MUSEO_TIPOLOGIA"
	id="9897672" name="SEDE_DENOMINAZIONE"
	id="9897673" name="SEDE_COMUNE"
	id="9897674" name="SEDE_PROVINCIA"
	id="9897675" name="SEDE_FRAZIONE"
	id="9897676" name="SEDE_CAP" 
	id="9897677" name="SEDE_INDIRIZZO"
	id="9897678" name="SEDE_TELEFONO"
	id="9897679" name="SEDE_FAX"
	id="9897680" name="SEDE_MAIL" 
	id="9897681" name="SEDE_SITO" 
	id="9897682" name="SEDE_CODICE" 
	id="9897683" name="MUSEO_CODICE"
	id="9897686" name="SEDE_APERTURA_NOTE" 
	id="9897687" name="SEDE_DESCR_ORARIO_APERTURA"
	id="9897689" name="MUSEO_INGRESSO" 
	id="9897690" name="MUSEO_GIORNO_INGRESSO_GRATUITO"
	id="9897725" name="lng" dataTypeName="location"
	 */
	/*
	String MUSEO_DENOMINAZIONE;
	String MUSEO_TIPOLOGIA;
	String SEDE_DENOMINAZIONE;
	String SEDE_COMUNE;
	String SEDE_PROVINCIA;
	String SEDE_FRAZIONE;
	String SEDE_CAP;
	String SEDE_INDIRIZZO;
	String SEDE_TELEFONO;
	String SEDE_FAX;
	String SEDE_MAIL;
	String SEDE_SITO;
	String SEDE_CODICE;
	String MUSEO_CODICE;
	String SEDE_APERTURA_NOTE;
	String SEDE_DESCR_ORARIO_APERTURA;
	String MUSEO_INGRESSO;
	String MUSEO_GIORNO_INGRESSO_GRATUITO;
	String latitude;
	String longitude;
	*/

	//Map<String,Object> data;
	LinkedHashMap<String, Object> coord;
	//Coordinate coordinate;
			
	
	//public View MuseiCol;

	//Row museo;
	
	@SuppressWarnings("unchecked")
	public Museo(Row r) {
		//MuseiCol=Place.listmetadati.get(0);
		//this.museo=r;
		super.setMetadata(Place.listmetadati.get(0));
		super.setRow(r);
		setBcolor(color.holo_orange_dark);
		/*
		 MUSEO_DENOMINAZIONE=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("MUSEO_DENOMINAZIONE"));
		 MUSEO_TIPOLOGIA=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("MUSEO_TIPOLOGIA"));
		 SEDE_DENOMINAZIONE=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_DENOMINAZIONE"));
		 SEDE_COMUNE=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_COMUNE"));
		 SEDE_PROVINCIA=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_PROVINCIA"));
		 SEDE_FRAZIONE=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_FRAZIONE"));
		 SEDE_CAP=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_CAP"));
		 SEDE_INDIRIZZO=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_INDIRIZZO"));
		 SEDE_TELEFONO=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_TELEFONO"));
		 SEDE_FAX=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_FAX"));
		 SEDE_MAIL=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_MAIL"));
		 SEDE_SITO=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_SITO"));
		 SEDE_CODICE=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_CODICE"));
		 MUSEO_CODICE=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("MUSEO_CODICE"));
		 SEDE_APERTURA_NOTE=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_APERTURA_NOTE"));
		 SEDE_DESCR_ORARIO_APERTURA=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("SEDE_DESCR_ORARIO_APERTURA"));
		 MUSEO_INGRESSO=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("MUSEO_INGRESSO"));
		 MUSEO_GIORNO_INGRESSO_GRATUITO=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("MUSEO_GIORNO_INGRESSO_GRATUITO"));
		 latitude=(String)museo.getDataField(MuseiCol.getColumnByIdentifier("lat"));
		 */
		
		 //data=super.getRow().getDataFieldsForSerialization();
		 super.setMapData(super.getRow().getDataFieldsForSerialization());
		 
		 //System.out.println(data);
		 coord=(LinkedHashMap<String, Object>) super.getRow().getDataField(View.getColByDataType(super.getMetadata(), "location"));
		 String lat = (String) coord.get("latitude");
		 String lon = (String) coord.get("longitude");
		 super.setCoord(lat, lon);
		 
		// Log.d("Latitude",super.getLatitude().toString());
		// Log.d("Latitude",super.getLongitude().toString());
		 
		 //Log.d("Museo",coord.getClass().getName());
		// super.setCoord(Double.parseDouble(latitude), 5555.4);
	}
	
	public String getAddress(){
		StringBuilder builder = new StringBuilder();
		builder.append(getStringValue("SEDE_INDIRIZZO")).
			append(", ").
			append(getStringValue("SEDE_CAP")).
			append(", ").
			append(getStringValue("SEDE_COMUNE")).
			append(", ").
			append(getStringValue("SEDE_PROVINCIA"));
		return builder.toString();
	}
	
	@Override
	public String getContactInfo() {
		StringBuilder builder = new StringBuilder();
		if(getStringValue("SEDE_TELEFONO") != null)
			builder.append("Tel.\n").append(getStringValue("SEDE_TELEFONO")).append("\n");
		if(getStringValue("SEDE_SITO") != null)
			builder.append("Sito web\n").append(getStringValue("SEDE_SITO")).append("\n");
		if(getStringValue("SEDE_MAIL") != null)
			builder.append("Email\n").append(getStringValue("SEDE_MAIL"));
		
		return builder.toString();
	}
	
	@Override
	public String toString() {
		
		return "TOSTRING";
		}
		
	@Override
	public String getDenominazione() {
		//Log.i("Museo",MUSEO_DENOMINAZIONE);
		// TODO Auto-generated method stub
		//return MUSEO_DENOMINAZIONE;
		//return (String) data.get(Integer.toString(MuseiCol.getColumnByIdentifier("MUSEO_DENOMINAZIONE").getId()));
		return super.getStringValue("MUSEO_DENOMINAZIONE");
	}

	@Override
	public String getTipologia() {
		//Log.i("Museo",MUSEO_TIPOLOGIA);
		// TODO Auto-generated method stub
		return super.getStringValue("MUSEO_TIPOLOGIA").concat(" - ")
			.concat(getStringValue("MUSEO_INGRESSO"));
	}
		
}
